package com.example.controller;

import com.example.entity.RestBean;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * 作者:xuSen
 * 日期2025/4/13 15:05
 * 该控制器类主要用于处理获取客户端 IP 地址的请求
 */
@RestController
public class controller {

    /**
     * 处理客户端发起的 /getIp 请求，用于获取客户端的 IP 地址
     * @param request HttpServletRequest 对象，可从中获取客户端请求的相关信息
     * @return 返回一个 RestBean 对象，包含操作结果和客户端的 IP 地址
     */
    @GetMapping("/getIp")
    public RestBean<String> getIp(HttpServletRequest request) {
        // 调用 request.getRemoteAddr() 方法获取客户端的 IP 地址
        // 并使用 RestBean.success 方法将 IP 地址封装到 RestBean 对象中返回
        return RestBean.success(request.getRemoteAddr());
    }
}